package fachadas;

import interfaces.InterfazFachadaUsuario;
import javax.ejb.Local;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import entidades.Usuario;

import objetosNegocio.ObjetoNegocioUsuarios;

/**
 * Session Bean implementation class FachadaUsuario
 */
@Stateless
@Local( { InterfazFachadaUsuario.class })
public class FachadaUsuario implements InterfazFachadaUsuario 
{
	@PersistenceContext(unitName="ClasesValorador")
	private EntityManager manager;
	
	private ObjetoNegocioUsuarios objetoNegocioUsuarios;

	/**
     * @see InterfazFachadaUsuario#modificarUsuario(Usuario)
     */
    public boolean modificarUsuario(Usuario arg0) 
    {
    	this.instanciarObjetoNegocio();
    	return objetoNegocioUsuarios.modificarUsuario(arg0);
    }

	/**
     * @see InterfazFachadaUsuario#ingresarUsuario(Usuario)
     */
    public Usuario ingresarUsuario(Usuario arg0) 
    {
    	this.instanciarObjetoNegocio();
    	return objetoNegocioUsuarios.ingresarUsuario(arg0);
    }

	/**
     * @see InterfazFachadaUsuario#buscarUsuario(Usuario)
     */
    public Usuario buscarUsuario(Usuario arg0) 
    {
    	instanciarObjetoNegocio();
    	return objetoNegocioUsuarios.buscarUsuario(arg0);
    }
    
    private void instanciarObjetoNegocio()
    {
    	if(objetoNegocioUsuarios == null)
    	{
    		objetoNegocioUsuarios = new ObjetoNegocioUsuarios(manager);
    	}
    }

}
